<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/siginfo.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/asm-generic/siginfo.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X1VBUElfQVNNX0dFTkVSSUNfU0lHSU5GT19IXzA_"><span class="b">_UAPI_ASM_GENERIC_SIGINFO_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X1VBUElfQVNNX0dFTkVSSUNfU0lHSU5GT19IXzA_"><span class="b">_UAPI_ASM_GENERIC_SIGINFO_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">compiler</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="5" /><span class="True">       5:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="6" /><span class="True">       6:</span> 
<a name="7" /><span class="True">       7:</span> <span class="m">typedef</span> <span class="m">union</span> <span class="b">sigval</span> <span class="f">{</span>
<a name="8" /><span class="True">       8:</span>     <span class="m">int</span> <span class="b">sival_int</span><span class="f">;</span>
<a name="9" /><span class="True">       9:</span>     <span class="m">void</span> <a href="cpu.c_macros_ref.html#_X191c2VyXzA_"><span class="b">__user</span></a> <span class="f">*</span><span class="b">sival_ptr</span><span class="f">;</span>
<a name="10" /><span class="True">      10:</span> <span class="f">}</span> <span class="b">sigval_t</span><span class="f">;</span>
<a name="11" /><span class="True">      11:</span> 
<a name="12" /><span class="True">      12:</span> <span class="k">/*</span>
<a name="13" /><span class="True">      13:</span> <span class="k"> * This is the size (including padding) of the part of the</span>
<a name="14" /><span class="True">      14:</span> <span class="k"> * struct siginfo that is before the union.</span>
<a name="15" /><span class="True">      15:</span> <span class="k"> */</span>
<a name="16" /><span class="False">      16:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SI_PREAMBLE_SIZE</span></a>
<a name="17" /><span class="False">      17:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SI_PREAMBLE_SIZE</span></a>    <span class="f">(</span><span class="c">3</span> <span class="f">*</span> <span class="m">sizeof</span><span class="f">(</span><span class="m">int</span><span class="f">)</span><span class="f">)</span>
<a name="18" /><span class="True">      18:</span> <span class="f">#</span><span class="n">endif</span>
<a name="19" /><span class="True">      19:</span> 
<a name="20" /><span class="True">      20:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_U0lfTUFYX1NJWkVfMA__"><span class="b">SI_MAX_SIZE</span></a>    <span class="c">128</span>
<a name="21" /><span class="True">      21:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_U0lfUEFEX1NJWkVfMA__"><span class="b">SI_PAD_SIZE</span></a>
<a name="22" /><span class="True">      22:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_U0lfUEFEX1NJWkVfMA__"><span class="b">SI_PAD_SIZE</span></a>    <span class="f">(</span><span class="f">(</span><a href="cpu.c_macros_ref.html#_U0lfTUFYX1NJWkVfMA__"><span class="b">SI_MAX_SIZE</span></a> <span class="f">-</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SI_PREAMBLE_SIZE</span></a><span class="f">)</span> <span class="f">/</span> <span class="m">sizeof</span><span class="f">(</span><span class="m">int</span><span class="f">)</span><span class="f">)</span>
<a name="23" /><span class="True">      23:</span> <span class="f">#</span><span class="n">endif</span>
<a name="24" /><span class="True">      24:</span> 
<a name="25" /><span class="True">      25:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a>
<a name="26" /><span class="True">      26:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a>    <span class="b">__kernel_uid32_t</span>
<a name="27" /><span class="True">      27:</span> <span class="f">#</span><span class="n">endif</span>
<a name="28" /><span class="True">      28:</span> 
<a name="29" /><span class="True">      29:</span> <span class="k">/*</span>
<a name="30" /><span class="True">      30:</span> <span class="k"> * The default &quot;si_band&quot; type is &quot;long&quot;, as specified by POSIX.</span>
<a name="31" /><span class="True">      31:</span> <span class="k"> * However, some architectures want to override this to &quot;int&quot;</span>
<a name="32" /><span class="True">      32:</span> <span class="k"> * for historical compatibility reasons, so we allow that.</span>
<a name="33" /><span class="True">      33:</span> <span class="k"> */</span>
<a name="34" /><span class="True">      34:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0JBTkRfVF8w"><span class="b">__ARCH_SI_BAND_T</span></a>
<a name="35" /><span class="True">      35:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0JBTkRfVF8w"><span class="b">__ARCH_SI_BAND_T</span></a> <span class="m">long</span>
<a name="36" /><span class="True">      36:</span> <span class="f">#</span><span class="n">endif</span>
<a name="37" /><span class="True">      37:</span> 
<a name="38" /><span class="True">      38:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0NMT0NLX1RfMA__"><span class="b">__ARCH_SI_CLOCK_T</span></a>
<a name="39" /><span class="True">      39:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0NMT0NLX1RfMA__"><span class="b">__ARCH_SI_CLOCK_T</span></a> <span class="b">__kernel_clock_t</span>
<a name="40" /><span class="True">      40:</span> <span class="f">#</span><span class="n">endif</span>
<a name="41" /><span class="True">      41:</span> 
<a name="42" /><span class="True">      42:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0FUVFJJQlVURVNfMA__"><span class="b">__ARCH_SI_ATTRIBUTES</span></a>
<a name="43" /><span class="True">      43:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0FUVFJJQlVURVNfMA__"><span class="b">__ARCH_SI_ATTRIBUTES</span></a>
<a name="44" /><span class="True">      44:</span> <span class="f">#</span><span class="n">endif</span>
<a name="45" /><span class="True">      45:</span> 
<a name="46" /><span class="True">      46:</span> <span class="f">#</span><span class="n">ifndef</span> <span class="b">HAVE_ARCH_SIGINFO_T</span>
<a name="47" /><span class="True">      47:</span> 
<a name="48" /><span class="True">      48:</span> <span class="m">typedef</span> <span class="m">struct</span> <span class="b">siginfo</span> <span class="f">{</span>
<a name="49" /><span class="True">      49:</span>     <span class="m">int</span> <span class="b">si_signo</span><span class="f">;</span>
<a name="50" /><span class="True">      50:</span>     <span class="m">int</span> <span class="b">si_errno</span><span class="f">;</span>
<a name="51" /><span class="True">      51:</span>     <span class="m">int</span> <span class="b">si_code</span><span class="f">;</span>
<a name="52" /><span class="True">      52:</span> 
<a name="53" /><span class="True">      53:</span>     <span class="m">union</span> <span class="f">{</span>
<a name="54" /><span class="True">      54:</span>         <span class="m">int</span> <span class="b">_pad</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_U0lfUEFEX1NJWkVfMA__"><span class="b">SI_PAD_SIZE</span></a><span class="f">]</span><span class="f">;</span>
<a name="55" /><span class="True">      55:</span> 
<a name="56" /><span class="True">      56:</span>         <span class="k">/* kill() */</span>
<a name="57" /><span class="True">      57:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="58" /><span class="True">      58:</span>             <span class="b">__kernel_pid_t</span> <span class="b">_pid</span><span class="f">;</span>    <span class="k">/* sender&apos;s pid */</span>
<a name="59" /><span class="True">      59:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a> <span class="b">_uid</span><span class="f">;</span>    <span class="k">/* sender&apos;s uid */</span>
<a name="60" /><span class="True">      60:</span>         <span class="f">}</span> <span class="b">_kill</span><span class="f">;</span>
<a name="61" /><span class="True">      61:</span> 
<a name="62" /><span class="True">      62:</span>         <span class="k">/* POSIX.1b timers */</span>
<a name="63" /><span class="True">      63:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="64" /><span class="True">      64:</span>             <span class="b">__kernel_timer_t</span> <span class="b">_tid</span><span class="f">;</span>    <span class="k">/* timer id */</span>
<a name="65" /><span class="True">      65:</span>             <span class="m">int</span> <span class="b">_overrun</span><span class="f">;</span>        <span class="k">/* overrun count */</span>
<a name="66" /><span class="True">      66:</span>             <span class="m">char</span> <span class="b">_pad</span><span class="f">[</span><span class="m">sizeof</span><span class="f">(</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a><span class="f">)</span> <span class="f">-</span> <span class="m">sizeof</span><span class="f">(</span><span class="m">int</span><span class="f">)</span><span class="f">]</span><span class="f">;</span>
<a name="67" /><span class="True">      67:</span>             <span class="b">sigval_t</span> <span class="b">_sigval</span><span class="f">;</span>    <span class="k">/* same as below */</span>
<a name="68" /><span class="True">      68:</span>             <span class="m">int</span> <span class="b">_sys_private</span><span class="f">;</span>       <span class="k">/* not to be passed to user */</span>
<a name="69" /><span class="True">      69:</span>         <span class="f">}</span> <span class="b">_timer</span><span class="f">;</span>
<a name="70" /><span class="True">      70:</span> 
<a name="71" /><span class="True">      71:</span>         <span class="k">/* POSIX.1b signals */</span>
<a name="72" /><span class="True">      72:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="73" /><span class="True">      73:</span>             <span class="b">__kernel_pid_t</span> <span class="b">_pid</span><span class="f">;</span>    <span class="k">/* sender&apos;s pid */</span>
<a name="74" /><span class="True">      74:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a> <span class="b">_uid</span><span class="f">;</span>    <span class="k">/* sender&apos;s uid */</span>
<a name="75" /><span class="True">      75:</span>             <span class="b">sigval_t</span> <span class="b">_sigval</span><span class="f">;</span>
<a name="76" /><span class="True">      76:</span>         <span class="f">}</span> <span class="b">_rt</span><span class="f">;</span>
<a name="77" /><span class="True">      77:</span> 
<a name="78" /><span class="True">      78:</span>         <span class="k">/* SIGCHLD */</span>
<a name="79" /><span class="True">      79:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="80" /><span class="True">      80:</span>             <span class="b">__kernel_pid_t</span> <span class="b">_pid</span><span class="f">;</span>    <span class="k">/* which child */</span>
<a name="81" /><span class="True">      81:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX1VJRF9UXzA_"><span class="b">__ARCH_SI_UID_T</span></a> <span class="b">_uid</span><span class="f">;</span>    <span class="k">/* sender&apos;s uid */</span>
<a name="82" /><span class="True">      82:</span>             <span class="m">int</span> <span class="b">_status</span><span class="f">;</span>        <span class="k">/* exit code */</span>
<a name="83" /><span class="True">      83:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0NMT0NLX1RfMA__"><span class="b">__ARCH_SI_CLOCK_T</span></a> <span class="b">_utime</span><span class="f">;</span>
<a name="84" /><span class="True">      84:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0NMT0NLX1RfMA__"><span class="b">__ARCH_SI_CLOCK_T</span></a> <span class="b">_stime</span><span class="f">;</span>
<a name="85" /><span class="True">      85:</span>         <span class="f">}</span> <span class="b">_sigchld</span><span class="f">;</span>
<a name="86" /><span class="True">      86:</span> 
<a name="87" /><span class="True">      87:</span>         <span class="k">/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */</span>
<a name="88" /><span class="True">      88:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="89" /><span class="True">      89:</span>             <span class="m">void</span> <a href="cpu.c_macros_ref.html#_X191c2VyXzA_"><span class="b">__user</span></a> <span class="f">*</span><span class="b">_addr</span><span class="f">;</span> <span class="k">/* faulting insn/memory ref. */</span>
<a name="90" /><span class="False">      90:</span> <span class="f">#</span><span class="n">ifdef</span> <span class="b">__ARCH_SI_TRAPNO</span>
<a name="91" /><span class="False">      91:</span>             <span class="m">int</span> <span class="b">_trapno</span><span class="f">;</span>    <span class="k">/* TRAP # which caused the signal */</span>
<a name="92" /><span class="True">      92:</span> <span class="f">#</span><span class="n">endif</span>
<a name="93" /><span class="True">      93:</span>             <span class="m">short</span> <span class="b">_addr_lsb</span><span class="f">;</span> <span class="k">/* LSB of the reported address */</span>
<a name="94" /><span class="True">      94:</span>         <span class="f">}</span> <span class="b">_sigfault</span><span class="f">;</span>
<a name="95" /><span class="True">      95:</span> 
<a name="96" /><span class="True">      96:</span>         <span class="k">/* SIGPOLL */</span>
<a name="97" /><span class="True">      97:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="98" /><span class="True">      98:</span>             <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0JBTkRfVF8w"><span class="b">__ARCH_SI_BAND_T</span></a> <span class="b">_band</span><span class="f">;</span>    <span class="k">/* POLL_IN, POLL_OUT, POLL_MSG */</span>
<a name="99" /><span class="True">      99:</span>             <span class="m">int</span> <span class="b">_fd</span><span class="f">;</span>
<a name="100" /><span class="True">     100:</span>         <span class="f">}</span> <span class="b">_sigpoll</span><span class="f">;</span>
<a name="101" /><span class="True">     101:</span> 
<a name="102" /><span class="True">     102:</span>         <span class="k">/* SIGSYS */</span>
<a name="103" /><span class="True">     103:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="104" /><span class="True">     104:</span>             <span class="m">void</span> <a href="cpu.c_macros_ref.html#_X191c2VyXzA_"><span class="b">__user</span></a> <span class="f">*</span><span class="b">_call_addr</span><span class="f">;</span> <span class="k">/* calling user insn */</span>
<a name="105" /><span class="True">     105:</span>             <span class="m">int</span> <span class="b">_syscall</span><span class="f">;</span>    <span class="k">/* triggering system call number */</span>
<a name="106" /><span class="True">     106:</span>             <span class="m">unsigned</span> <span class="m">int</span> <span class="b">_arch</span><span class="f">;</span>    <span class="k">/* AUDIT_ARCH_* of syscall */</span>
<a name="107" /><span class="True">     107:</span>         <span class="f">}</span> <span class="b">_sigsys</span><span class="f">;</span>
<a name="108" /><span class="True">     108:</span>     <span class="f">}</span> <span class="b">_sifields</span><span class="f">;</span>
<a name="109" /><span class="True">     109:</span> <span class="f">}</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJX0FUVFJJQlVURVNfMA__"><span class="b">__ARCH_SI_ATTRIBUTES</span></a> <span class="b">siginfo_t</span><span class="f">;</span>
<a name="110" /><span class="True">     110:</span> 
<a name="111" /><span class="True">     111:</span> <span class="k">/* If the arch shares siginfo, then it has SIGSYS. */</span>
<a name="112" /><span class="True">     112:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJR1NZU18w"><span class="b">__ARCH_SIGSYS</span></a>
<a name="113" /><span class="True">     113:</span> <span class="f">#</span><span class="n">endif</span>
<a name="114" /><span class="True">     114:</span> 
<a name="115" /><span class="True">     115:</span> <span class="k">/*</span>
<a name="116" /><span class="True">     116:</span> <span class="k"> * How these fields are to be accessed.</span>
<a name="117" /><span class="True">     117:</span> <span class="k"> */</span>
<a name="118" /><span class="True">     118:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfcGlkXzA_"><span class="b">si_pid</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_kill</span><span class="f">.</span><span class="b">_pid</span>
<a name="119" /><span class="True">     119:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfdWlkXzA_"><span class="b">si_uid</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_kill</span><span class="f">.</span><span class="b">_uid</span>
<a name="120" /><span class="True">     120:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfdGlkXzA_"><span class="b">si_tid</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_timer</span><span class="f">.</span><span class="b">_tid</span>
<a name="121" /><span class="True">     121:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfb3ZlcnJ1bl8w"><span class="b">si_overrun</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_timer</span><span class="f">.</span><span class="b">_overrun</span>
<a name="122" /><span class="True">     122:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfc3lzX3ByaXZhdGVfMA__"><span class="b">si_sys_private</span></a>  <span class="b">_sifields</span><span class="f">.</span><span class="b">_timer</span><span class="f">.</span><span class="b">_sys_private</span>
<a name="123" /><span class="True">     123:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfc3RhdHVzXzA_"><span class="b">si_status</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigchld</span><span class="f">.</span><span class="b">_status</span>
<a name="124" /><span class="True">     124:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfdXRpbWVfMA__"><span class="b">si_utime</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigchld</span><span class="f">.</span><span class="b">_utime</span>
<a name="125" /><span class="True">     125:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfc3RpbWVfMA__"><span class="b">si_stime</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigchld</span><span class="f">.</span><span class="b">_stime</span>
<a name="126" /><span class="True">     126:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfdmFsdWVfMA__"><span class="b">si_value</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_rt</span><span class="f">.</span><span class="b">_sigval</span>
<a name="127" /><span class="True">     127:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfaW50XzA_"><span class="b">si_int</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_rt</span><span class="f">.</span><span class="b">_sigval</span><span class="f">.</span><span class="b">sival_int</span>
<a name="128" /><span class="True">     128:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfcHRyXzA_"><span class="b">si_ptr</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_rt</span><span class="f">.</span><span class="b">_sigval</span><span class="f">.</span><span class="b">sival_ptr</span>
<a name="129" /><span class="True">     129:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfYWRkcl8w"><span class="b">si_addr</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigfault</span><span class="f">.</span><span class="b">_addr</span>
<a name="130" /><span class="False">     130:</span> <span class="f">#</span><span class="n">ifdef</span> <span class="b">__ARCH_SI_TRAPNO</span>
<a name="131" /><span class="False">     131:</span> <span class="f">#</span><span class="n">define</span> <span class="b">si_trapno</span>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigfault</span><span class="f">.</span><span class="b">_trapno</span>
<a name="132" /><span class="True">     132:</span> <span class="f">#</span><span class="n">endif</span>
<a name="133" /><span class="True">     133:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfYWRkcl9sc2JfMA__"><span class="b">si_addr_lsb</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigfault</span><span class="f">.</span><span class="b">_addr_lsb</span>
<a name="134" /><span class="True">     134:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfYmFuZF8w"><span class="b">si_band</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigpoll</span><span class="f">.</span><span class="b">_band</span>
<a name="135" /><span class="True">     135:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfZmRfMA__"><span class="b">si_fd</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigpoll</span><span class="f">.</span><span class="b">_fd</span>
<a name="136" /><span class="True">     136:</span> <span class="f">#</span><span class="n">ifdef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJR1NZU18w"><span class="b">__ARCH_SIGSYS</span></a>
<a name="137" /><span class="True">     137:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfY2FsbF9hZGRyXzA_"><span class="b">si_call_addr</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigsys</span><span class="f">.</span><span class="b">_call_addr</span>
<a name="138" /><span class="True">     138:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfc3lzY2FsbF8w"><span class="b">si_syscall</span></a>    <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigsys</span><span class="f">.</span><span class="b">_syscall</span>
<a name="139" /><span class="True">     139:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lfYXJjaF8w"><span class="b">si_arch</span></a>        <span class="b">_sifields</span><span class="f">.</span><span class="b">_sigsys</span><span class="f">.</span><span class="b">_arch</span>
<a name="140" /><span class="True">     140:</span> <span class="f">#</span><span class="n">endif</span>
<a name="141" /><span class="True">     141:</span> 
<a name="142" /><span class="False">     142:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19LRVJORUxfX18w"><span class="b">__KERNEL__</span></a>
<a name="143" /><span class="False">     143:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9LSUxMXzA_"><span class="b">__SI_KILL</span></a>    <span class="c">0</span>
<a name="144" /><span class="False">     144:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9USU1FUl8w"><span class="b">__SI_TIMER</span></a>    <span class="c">0</span>
<a name="145" /><span class="False">     145:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a>    <span class="c">0</span>
<a name="146" /><span class="False">     146:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a>    <span class="c">0</span>
<a name="147" /><span class="False">     147:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a>    <span class="c">0</span>
<a name="148" /><span class="False">     148:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9SVF8w"><span class="b">__SI_RT</span></a>        <span class="c">0</span>
<a name="149" /><span class="False">     149:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9NRVNHUV8w"><span class="b">__SI_MESGQ</span></a>    <span class="c">0</span>
<a name="150" /><span class="False">     150:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9TWVNfMA__"><span class="b">__SI_SYS</span></a>    <span class="c">0</span>
<a name="151" /><span class="False">     151:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X19TSV9DT0RFXzA_"><span class="b">__SI_CODE</span></a><span class="f">(</span><span class="b">T</span><span class="f">,</span><span class="b">N</span><span class="f">)</span>    <span class="f">(</span><span class="b">N</span><span class="f">)</span>
<a name="152" /><span class="True">     152:</span> <span class="f">#</span><span class="n">endif</span>
<a name="153" /><span class="True">     153:</span> 
<a name="154" /><span class="True">     154:</span> <span class="k">/*</span>
<a name="155" /><span class="True">     155:</span> <span class="k"> * si_code values</span>
<a name="156" /><span class="True">     156:</span> <span class="k"> * Digital reserves positive values for kernel-generated signals.</span>
<a name="157" /><span class="True">     157:</span> <span class="k"> */</span>
<a name="158" /><span class="True">     158:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfVVNFUl8w"><span class="b">SI_USER</span></a>        <span class="c">0</span>        <span class="k">/* sent by kill, sigsend, raise */</span>
<a name="159" /><span class="True">     159:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfS0VSTkVMXzA_"><span class="b">SI_KERNEL</span></a>    <span class="c">0x80</span>        <span class="k">/* sent by the kernel from somewhere */</span>
<a name="160" /><span class="True">     160:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfUVVFVUVfMA__"><span class="b">SI_QUEUE</span></a>    <span class="f">-</span><span class="c">1</span>        <span class="k">/* sent by sigqueue */</span>
<a name="161" /><span class="True">     161:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfVElNRVJfMA__"><span class="b">SI_TIMER</span></a> <a href="cpu.c_macros_noref.html#_X19TSV9DT0RFXzA_"><span class="b">__SI_CODE</span></a><span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9USU1FUl8w"><span class="b">__SI_TIMER</span></a><span class="f">,</span><span class="f">-</span><span class="c">2</span><span class="f">)</span> <span class="k">/* sent by timer expiration */</span>
<a name="162" /><span class="True">     162:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfTUVTR1FfMA__"><span class="b">SI_MESGQ</span></a> <a href="cpu.c_macros_noref.html#_X19TSV9DT0RFXzA_"><span class="b">__SI_CODE</span></a><span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9NRVNHUV8w"><span class="b">__SI_MESGQ</span></a><span class="f">,</span><span class="f">-</span><span class="c">3</span><span class="f">)</span> <span class="k">/* sent by real time mesq state change */</span>
<a name="163" /><span class="True">     163:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfQVNZTkNJT18w"><span class="b">SI_ASYNCIO</span></a>    <span class="f">-</span><span class="c">4</span>        <span class="k">/* sent by AIO completion */</span>
<a name="164" /><span class="True">     164:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfU0lHSU9fMA__"><span class="b">SI_SIGIO</span></a>    <span class="f">-</span><span class="c">5</span>        <span class="k">/* sent by queued SIGIO */</span>
<a name="165" /><span class="True">     165:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfVEtJTExfMA__"><span class="b">SI_TKILL</span></a>    <span class="f">-</span><span class="c">6</span>        <span class="k">/* sent by tkill system call */</span>
<a name="166" /><span class="True">     166:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfREVUSFJFQURfMA__"><span class="b">SI_DETHREAD</span></a>    <span class="f">-</span><span class="c">7</span>        <span class="k">/* sent by execve() killing subsidiary threads */</span>
<a name="167" /><span class="True">     167:</span> 
<a name="168" /><span class="True">     168:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfRlJPTVVTRVJfMA__"><span class="b">SI_FROMUSER</span></a><span class="f">(</span><span class="b">siptr</span><span class="f">)</span>    <span class="f">(</span><span class="f">(</span><span class="b">siptr</span><span class="f">)</span><span class="f">-&gt;</span><span class="b">si_code</span> <span class="f">&lt;=</span> <span class="c">0</span><span class="f">)</span>
<a name="169" /><span class="True">     169:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lfRlJPTUtFUk5FTF8w"><span class="b">SI_FROMKERNEL</span></a><span class="f">(</span><span class="b">siptr</span><span class="f">)</span>    <span class="f">(</span><span class="f">(</span><span class="b">siptr</span><span class="f">)</span><span class="f">-&gt;</span><span class="b">si_code</span> <span class="f">&gt;</span> <span class="c">0</span><span class="f">)</span>
<a name="170" /><span class="True">     170:</span> 
<a name="171" /><span class="True">     171:</span> <span class="k">/*</span>
<a name="172" /><span class="True">     172:</span> <span class="k"> * SIGILL si_codes</span>
<a name="173" /><span class="True">     173:</span> <span class="k"> */</span>
<a name="174" /><span class="True">     174:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0lMTE9QQ18w"><span class="b">ILL_ILLOPC</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* illegal opcode */</span>
<a name="175" /><span class="True">     175:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0lMTE9QTl8w"><span class="b">ILL_ILLOPN</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* illegal operand */</span>
<a name="176" /><span class="True">     176:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0lMTEFEUl8w"><span class="b">ILL_ILLADR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>    <span class="k">/* illegal addressing mode */</span>
<a name="177" /><span class="True">     177:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0lMTFRSUF8w"><span class="b">ILL_ILLTRP</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>    <span class="k">/* illegal trap */</span>
<a name="178" /><span class="True">     178:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX1BSVk9QQ18w"><span class="b">ILL_PRVOPC</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">5</span><span class="f">)</span>    <span class="k">/* privileged opcode */</span>
<a name="179" /><span class="True">     179:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX1BSVlJFR18w"><span class="b">ILL_PRVREG</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">6</span><span class="f">)</span>    <span class="k">/* privileged register */</span>
<a name="180" /><span class="True">     180:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0NPUFJPQ18w"><span class="b">ILL_COPROC</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">7</span><span class="f">)</span>    <span class="k">/* coprocessor error */</span>
<a name="181" /><span class="True">     181:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SUxMX0JBRFNUS18w"><span class="b">ILL_BADSTK</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">8</span><span class="f">)</span>    <span class="k">/* internal stack error */</span>
<a name="182" /><span class="True">     182:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR0lMTF8w"><span class="b">NSIGILL</span></a>        <span class="c">8</span>
<a name="183" /><span class="True">     183:</span> 
<a name="184" /><span class="True">     184:</span> <span class="k">/*</span>
<a name="185" /><span class="True">     185:</span> <span class="k"> * SIGFPE si_codes</span>
<a name="186" /><span class="True">     186:</span> <span class="k"> */</span>
<a name="187" /><span class="True">     187:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0lOVERJVl8w"><span class="b">FPE_INTDIV</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* integer divide by zero */</span>
<a name="188" /><span class="True">     188:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0lOVE9WRl8w"><span class="b">FPE_INTOVF</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* integer overflow */</span>
<a name="189" /><span class="True">     189:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVERJVl8w"><span class="b">FPE_FLTDIV</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>    <span class="k">/* floating point divide by zero */</span>
<a name="190" /><span class="True">     190:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVE9WRl8w"><span class="b">FPE_FLTOVF</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>    <span class="k">/* floating point overflow */</span>
<a name="191" /><span class="True">     191:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVFVORF8w"><span class="b">FPE_FLTUND</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">5</span><span class="f">)</span>    <span class="k">/* floating point underflow */</span>
<a name="192" /><span class="True">     192:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVFJFU18w"><span class="b">FPE_FLTRES</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">6</span><span class="f">)</span>    <span class="k">/* floating point inexact result */</span>
<a name="193" /><span class="True">     193:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVElOVl8w"><span class="b">FPE_FLTINV</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">7</span><span class="f">)</span>    <span class="k">/* floating point invalid operation */</span>
<a name="194" /><span class="True">     194:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_RlBFX0ZMVFNVQl8w"><span class="b">FPE_FLTSUB</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">8</span><span class="f">)</span>    <span class="k">/* subscript out of range */</span>
<a name="195" /><span class="True">     195:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR0ZQRV8w"><span class="b">NSIGFPE</span></a>        <span class="c">8</span>
<a name="196" /><span class="True">     196:</span> 
<a name="197" /><span class="True">     197:</span> <span class="k">/*</span>
<a name="198" /><span class="True">     198:</span> <span class="k"> * SIGSEGV si_codes</span>
<a name="199" /><span class="True">     199:</span> <span class="k"> */</span>
<a name="200" /><span class="True">     200:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VHVl9NQVBFUlJfMA__"><span class="b">SEGV_MAPERR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* address not mapped to object */</span>
<a name="201" /><span class="True">     201:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VHVl9BQ0NFUlJfMA__"><span class="b">SEGV_ACCERR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* invalid permissions for mapped object */</span>
<a name="202" /><span class="True">     202:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR1NFR1ZfMA__"><span class="b">NSIGSEGV</span></a>    <span class="c">2</span>
<a name="203" /><span class="True">     203:</span> 
<a name="204" /><span class="True">     204:</span> <span class="k">/*</span>
<a name="205" /><span class="True">     205:</span> <span class="k"> * SIGBUS si_codes</span>
<a name="206" /><span class="True">     206:</span> <span class="k"> */</span>
<a name="207" /><span class="True">     207:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_QlVTX0FEUkFMTl8w"><span class="b">BUS_ADRALN</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* invalid address alignment */</span>
<a name="208" /><span class="True">     208:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_QlVTX0FEUkVSUl8w"><span class="b">BUS_ADRERR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* non-existent physical address */</span>
<a name="209" /><span class="True">     209:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_QlVTX09CSkVSUl8w"><span class="b">BUS_OBJERR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>    <span class="k">/* object specific hardware error */</span>
<a name="210" /><span class="True">     210:</span> <span class="k">/* hardware memory error consumed on a machine check: action required */</span>
<a name="211" /><span class="True">     211:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_QlVTX01DRUVSUl9BUl8w"><span class="b">BUS_MCEERR_AR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>
<a name="212" /><span class="True">     212:</span> <span class="k">/* hardware memory error detected in process but not consumed: action optional*/</span>
<a name="213" /><span class="True">     213:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_QlVTX01DRUVSUl9BT18w"><span class="b">BUS_MCEERR_AO</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">5</span><span class="f">)</span>
<a name="214" /><span class="True">     214:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR0JVU18w"><span class="b">NSIGBUS</span></a>        <span class="c">5</span>
<a name="215" /><span class="True">     215:</span> 
<a name="216" /><span class="True">     216:</span> <span class="k">/*</span>
<a name="217" /><span class="True">     217:</span> <span class="k"> * SIGTRAP si_codes</span>
<a name="218" /><span class="True">     218:</span> <span class="k"> */</span>
<a name="219" /><span class="True">     219:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_VFJBUF9CUktQVF8w"><span class="b">TRAP_BRKPT</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* process breakpoint */</span>
<a name="220" /><span class="True">     220:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_VFJBUF9UUkFDRV8w"><span class="b">TRAP_TRACE</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* process trace trap */</span>
<a name="221" /><span class="True">     221:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_VFJBUF9CUkFOQ0hfMA__"><span class="b">TRAP_BRANCH</span></a>     <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>  <span class="k">/* process taken branch trap */</span>
<a name="222" /><span class="True">     222:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_VFJBUF9IV0JLUFRfMA__"><span class="b">TRAP_HWBKPT</span></a>     <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9GQVVMVF8w"><span class="b">__SI_FAULT</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>  <span class="k">/* hardware breakpoint/watchpoint */</span>
<a name="223" /><span class="True">     223:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR1RSQVBfMA__"><span class="b">NSIGTRAP</span></a>    <span class="c">4</span>
<a name="224" /><span class="True">     224:</span> 
<a name="225" /><span class="True">     225:</span> <span class="k">/*</span>
<a name="226" /><span class="True">     226:</span> <span class="k"> * SIGCHLD si_codes</span>
<a name="227" /><span class="True">     227:</span> <span class="k"> */</span>
<a name="228" /><span class="True">     228:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX0VYSVRFRF8w"><span class="b">CLD_EXITED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* child has exited */</span>
<a name="229" /><span class="True">     229:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX0tJTExFRF8w"><span class="b">CLD_KILLED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* child was killed */</span>
<a name="230" /><span class="True">     230:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX0RVTVBFRF8w"><span class="b">CLD_DUMPED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>    <span class="k">/* child terminated abnormally */</span>
<a name="231" /><span class="True">     231:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX1RSQVBQRURfMA__"><span class="b">CLD_TRAPPED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>    <span class="k">/* traced child has trapped */</span>
<a name="232" /><span class="True">     232:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX1NUT1BQRURfMA__"><span class="b">CLD_STOPPED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">5</span><span class="f">)</span>    <span class="k">/* child has stopped */</span>
<a name="233" /><span class="True">     233:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0xEX0NPTlRJTlVFRF8w"><span class="b">CLD_CONTINUED</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9DSExEXzA_"><span class="b">__SI_CHLD</span></a><span class="f">|</span><span class="c">6</span><span class="f">)</span>    <span class="k">/* stopped child has continued */</span>
<a name="234" /><span class="True">     234:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR0NITERfMA__"><span class="b">NSIGCHLD</span></a>    <span class="c">6</span>
<a name="235" /><span class="True">     235:</span> 
<a name="236" /><span class="True">     236:</span> <span class="k">/*</span>
<a name="237" /><span class="True">     237:</span> <span class="k"> * SIGPOLL si_codes</span>
<a name="238" /><span class="True">     238:</span> <span class="k"> */</span>
<a name="239" /><span class="True">     239:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9JTl8w"><span class="b">POLL_IN</span></a>        <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* data input available */</span>
<a name="240" /><span class="True">     240:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9PVVRfMA__"><span class="b">POLL_OUT</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">2</span><span class="f">)</span>    <span class="k">/* output buffers available */</span>
<a name="241" /><span class="True">     241:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9NU0dfMA__"><span class="b">POLL_MSG</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">3</span><span class="f">)</span>    <span class="k">/* input message available */</span>
<a name="242" /><span class="True">     242:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9FUlJfMA__"><span class="b">POLL_ERR</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">4</span><span class="f">)</span>    <span class="k">/* i/o error */</span>
<a name="243" /><span class="True">     243:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9QUklfMA__"><span class="b">POLL_PRI</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">5</span><span class="f">)</span>    <span class="k">/* high priority input available */</span>
<a name="244" /><span class="True">     244:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UE9MTF9IVVBfMA__"><span class="b">POLL_HUP</span></a>    <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9QT0xMXzA_"><span class="b">__SI_POLL</span></a><span class="f">|</span><span class="c">6</span><span class="f">)</span>    <span class="k">/* device disconnected */</span>
<a name="245" /><span class="True">     245:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR1BPTExfMA__"><span class="b">NSIGPOLL</span></a>    <span class="c">6</span>
<a name="246" /><span class="True">     246:</span> 
<a name="247" /><span class="True">     247:</span> <span class="k">/*</span>
<a name="248" /><span class="True">     248:</span> <span class="k"> * SIGSYS si_codes</span>
<a name="249" /><span class="True">     249:</span> <span class="k"> */</span>
<a name="250" /><span class="True">     250:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U1lTX1NFQ0NPTVBfMA__"><span class="b">SYS_SECCOMP</span></a>        <span class="f">(</span><a href="cpu.c_macros_noref.html#_X19TSV9TWVNfMA__"><span class="b">__SI_SYS</span></a><span class="f">|</span><span class="c">1</span><span class="f">)</span>    <span class="k">/* seccomp triggered */</span>
<a name="251" /><span class="True">     251:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TlNJR1NZU18w"><span class="b">NSIGSYS</span></a>    <span class="c">1</span>
<a name="252" /><span class="True">     252:</span> 
<a name="253" /><span class="True">     253:</span> <span class="k">/*</span>
<a name="254" /><span class="True">     254:</span> <span class="k"> * sigevent definitions</span>
<a name="255" /><span class="True">     255:</span> <span class="k"> * </span>
<a name="256" /><span class="True">     256:</span> <span class="k"> * It seems likely that SIGEV_THREAD will have to be handled from </span>
<a name="257" /><span class="True">     257:</span> <span class="k"> * userspace, libpthread transmuting it to SIGEV_SIGNAL, which the</span>
<a name="258" /><span class="True">     258:</span> <span class="k"> * thread manager then catches and does the appropriate nonsense.</span>
<a name="259" /><span class="True">     259:</span> <span class="k"> * However, everything is written out here so as to not get lost.</span>
<a name="260" /><span class="True">     260:</span> <span class="k"> */</span>
<a name="261" /><span class="True">     261:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lHRVZfU0lHTkFMXzA_"><span class="b">SIGEV_SIGNAL</span></a>    <span class="c">0</span>    <span class="k">/* notify via signal */</span>
<a name="262" /><span class="True">     262:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lHRVZfTk9ORV8w"><span class="b">SIGEV_NONE</span></a>    <span class="c">1</span>    <span class="k">/* other notification: meaningless */</span>
<a name="263" /><span class="True">     263:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lHRVZfVEhSRUFEXzA_"><span class="b">SIGEV_THREAD</span></a>    <span class="c">2</span>    <span class="k">/* deliver via thread creation */</span>
<a name="264" /><span class="True">     264:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0lHRVZfVEhSRUFEX0lEXzA_"><span class="b">SIGEV_THREAD_ID</span></a> <span class="c">4</span>    <span class="k">/* deliver to thread */</span>
<a name="265" /><span class="True">     265:</span> 
<a name="266" /><span class="True">     266:</span> <span class="k">/*</span>
<a name="267" /><span class="True">     267:</span> <span class="k"> * This works because the alignment is ok on all current architectures</span>
<a name="268" /><span class="True">     268:</span> <span class="k"> * but we leave open this being overridden in the future</span>
<a name="269" /><span class="True">     269:</span> <span class="k"> */</span>
<a name="270" /><span class="True">     270:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SIGEV_PREAMBLE_SIZE</span></a>
<a name="271" /><span class="True">     271:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SIGEV_PREAMBLE_SIZE</span></a>    <span class="f">(</span><span class="m">sizeof</span><span class="f">(</span><span class="m">int</span><span class="f">)</span> <span class="f">*</span> <span class="c">2</span> <span class="f">+</span> <span class="m">sizeof</span><span class="f">(</span><span class="b">sigval_t</span><span class="f">)</span><span class="f">)</span>
<a name="272" /><span class="True">     272:</span> <span class="f">#</span><span class="n">endif</span>
<a name="273" /><span class="True">     273:</span> 
<a name="274" /><span class="True">     274:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_U0lHRVZfTUFYX1NJWkVfMA__"><span class="b">SIGEV_MAX_SIZE</span></a>    <span class="c">64</span>
<a name="275" /><span class="True">     275:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_U0lHRVZfUEFEX1NJWkVfMA__"><span class="b">SIGEV_PAD_SIZE</span></a>    <span class="f">(</span><span class="f">(</span><a href="cpu.c_macros_ref.html#_U0lHRVZfTUFYX1NJWkVfMA__"><span class="b">SIGEV_MAX_SIZE</span></a> <span class="f">-</span> <a href="cpu.c_macros_ref.html#_X19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkVfMA__"><span class="b">__ARCH_SIGEV_PREAMBLE_SIZE</span></a><span class="f">)</span> \
<a name="276" /><span class="True">     276:</span>         <span class="f">/</span> <span class="m">sizeof</span><span class="f">(</span><span class="m">int</span><span class="f">)</span><span class="f">)</span>
<a name="277" /><span class="True">     277:</span> 
<a name="278" /><span class="True">     278:</span> <span class="m">typedef</span> <span class="m">struct</span> <span class="b">sigevent</span> <span class="f">{</span>
<a name="279" /><span class="True">     279:</span>     <span class="b">sigval_t</span> <span class="b">sigev_value</span><span class="f">;</span>
<a name="280" /><span class="True">     280:</span>     <span class="m">int</span> <span class="b">sigev_signo</span><span class="f">;</span>
<a name="281" /><span class="True">     281:</span>     <span class="m">int</span> <span class="b">sigev_notify</span><span class="f">;</span>
<a name="282" /><span class="True">     282:</span>     <span class="m">union</span> <span class="f">{</span>
<a name="283" /><span class="True">     283:</span>         <span class="m">int</span> <span class="b">_pad</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_U0lHRVZfUEFEX1NJWkVfMA__"><span class="b">SIGEV_PAD_SIZE</span></a><span class="f">]</span><span class="f">;</span>
<a name="284" /><span class="True">     284:</span>          <span class="m">int</span> <span class="b">_tid</span><span class="f">;</span>
<a name="285" /><span class="True">     285:</span> 
<a name="286" /><span class="True">     286:</span>         <span class="m">struct</span> <span class="f">{</span>
<a name="287" /><span class="True">     287:</span>             <span class="m">void</span> <span class="f">(</span><span class="f">*</span><span class="b">_function</span><span class="f">)</span><span class="f">(</span><span class="b">sigval_t</span><span class="f">)</span><span class="f">;</span>
<a name="288" /><span class="True">     288:</span>             <span class="m">void</span> <span class="f">*</span><span class="b">_attribute</span><span class="f">;</span>    <span class="k">/* really pthread_attr_t */</span>
<a name="289" /><span class="True">     289:</span>         <span class="f">}</span> <span class="b">_sigev_thread</span><span class="f">;</span>
<a name="290" /><span class="True">     290:</span>     <span class="f">}</span> <span class="b">_sigev_un</span><span class="f">;</span>
<a name="291" /><span class="True">     291:</span> <span class="f">}</span> <span class="b">sigevent_t</span><span class="f">;</span>
<a name="292" /><span class="True">     292:</span> 
<a name="293" /><span class="True">     293:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lnZXZfbm90aWZ5X2Z1bmN0aW9uXzA_"><span class="b">sigev_notify_function</span></a>    <span class="b">_sigev_un</span><span class="f">.</span><span class="b">_sigev_thread</span><span class="f">.</span><span class="b">_function</span>
<a name="294" /><span class="True">     294:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lnZXZfbm90aWZ5X2F0dHJpYnV0ZXNfMA__"><span class="b">sigev_notify_attributes</span></a>    <span class="b">_sigev_un</span><span class="f">.</span><span class="b">_sigev_thread</span><span class="f">.</span><span class="b">_attribute</span>
<a name="295" /><span class="True">     295:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_c2lnZXZfbm90aWZ5X3RocmVhZF9pZF8w"><span class="b">sigev_notify_thread_id</span></a>     <span class="b">_sigev_un</span><span class="f">.</span><span class="b">_tid</span>
<a name="296" /><span class="True">     296:</span> 
<a name="297" /><span class="True">     297:</span> 
<a name="298" /><span class="True">     298:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _UAPI_ASM_GENERIC_SIGINFO_H */</span>
<a name="299" /><span class="True">     299:</span> </pre>
  </body>
</html>
